#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <fstream>

using namespace std;
#define node_low 1000
#define node_high 2000
#define edge_high 500

int main()
{
    srand((unsigned)time(NULL));
    int n = (rand() % (node_high-node_low+1))+node_low;
    
    ofstream out;
    out.open("./high_graph.txt");
    for (int i = 0; i < n; i++){
        int m = (rand() % (edge_high+1));
        for (int j = 0; j < m; j++)
        {
            int node2 = (rand() % (n-i+1))+i;
            out << i << " " << node2 <<endl;
        }
    }
    return 0;
}